
		Imports Acceso_a_Datos.Datos
		Namespace BO
		Partial Public Class tFamiliares



# Region "tPersonas"

		private mtPersonas As New tPersonas

		Public Property tPersonas As tPersonas
        Get
                mtPersonas = mtPersonas.TraerFiltradoListOf("IdPersona", Me.IdPersona).Item(0)
        Return mtPersonas
        End Get
        Set
             If ((mtPersonas Is Nothing) Or (Me.tPersonas.Equals(value) = False)) Then
                If Not (Me.tPersonas Is Nothing)
	               Dim oldtPersonas As tPersonas = Me.tPersonas
                   Me.mtPersonas = Nothing
                   oldtPersonas.RemoveListatFamiliares(Me)
             	End If
            	If Not (value Is Nothing) Then
                   Me.mtPersonas = value
                   Me.tPersonas.AddListatFamiliares(Me)
            	End If
             End If
        End Set
       End Property

# End Region
# Region "tDiscapacidad_x_Familiar"
	private mlistatDiscapacidad_x_Familiar As New List (Of tDiscapacidad_x_Familiar)
Public Property ListatDiscapacidad_x_Familiar As System.Collections.Generic.List(Of tDiscapacidad_x_Familiar)
Get
dim mtDiscapacidad_x_Familiar As New tDiscapacidad_x_Familiar
mlistatDiscapacidad_x_Familiar =mtDiscapacidad_x_Familiar.TraerFiltradoListOf("IdFamiliar",Me.IdFamiliar)
Return mlistatDiscapacidad_x_Familiar
End Get
Set
RemoveAllListatDiscapacidad_x_Familiar()
If Not (Value Is Nothing) Then
Dim otDiscapacidad_x_Familiar As tDiscapacidad_x_Familiar
	For Each otDiscapacidad_x_Familiar in Value
		AddListatDiscapacidad_x_Familiar(otDiscapacidad_x_Familiar)
	Next
End If
End Set
End Property


		
		
	   Public Sub AddListatDiscapacidad_x_Familiar(newtDiscapacidad_x_Familiar As tDiscapacidad_x_Familiar)
	If (mlistatDiscapacidad_x_Familiar Is Nothing) Then
		mlistatDiscapacidad_x_Familiar = new System.Collections.Generic.List(Of tDiscapacidad_x_Familiar)
	End If
	If Not mlistatDiscapacidad_x_Familiar.Contains(newtDiscapacidad_x_Familiar) Then
		mlistatDiscapacidad_x_Familiar.Add(newtDiscapacidad_x_Familiar)
		newtDiscapacidad_x_Familiar.tFamiliares = Me
	End If
End Sub

	   
	   
	   
	   Public Sub RemoveListatDiscapacidad_x_Familiar(oldtDiscapacidad_x_Familiar As tDiscapacidad_x_Familiar)
	If (mlistatDiscapacidad_x_Familiar.Contains(oldtDiscapacidad_x_Familiar)) Then
		mlistatDiscapacidad_x_Familiar.Remove(oldtDiscapacidad_x_Familiar)
		oldtDiscapacidad_x_Familiar.tFamiliares = Nothing
	End If
End Sub
	
			
			Public Sub RemoveAllListatDiscapacidad_x_Familiar()
	If Not (mlistatDiscapacidad_x_Familiar Is Nothing)
		Dim tmp_listatDiscapacidad_x_Familiar As System.Collections.ArrayList = new System.Collections.ArrayList()
		Dim oldtDiscapacidad_x_Familiar As tDiscapacidad_x_Familiar
		For Each oldtDiscapacidad_x_Familiar in mlistatDiscapacidad_x_Familiar
			tmp_listatDiscapacidad_x_Familiar.Add(oldtDiscapacidad_x_Familiar)
		Next
	mlistatDiscapacidad_x_Familiar.Clear()
	For Each oldtDiscapacidad_x_Familiar in tmp_listatDiscapacidad_x_Familiar
		oldtDiscapacidad_x_Familiar = Nothing
	Next
	tmp_listatDiscapacidad_x_Familiar.Clear()
	End If
End Sub

# End Region


# Region "Lecturas que devuelven listas"
Public Function TraerTodosListOf() As List(Of tFamiliares)
            Dim dtDatos As DataTable
            Dim listatFamiliares As New List(Of tFamiliares)
            Dim param As [String]
            param = (Me.mNombreEntidad + "_SelectAll")
            dtDatos = Me.ServidorDatos.TraerDataTable(param)
            For Each dr As DataRow In dtDatos.Rows
            Dim mtFamiliares As New tFamiliares
				mtFamiliares.IdFamiliar = CType(dr.Item("IdFamiliar"),Integer)
				mtFamiliares.Traer_objeto()
            	listatFamiliares.Add( mtFamiliares)
    		Next dr
Return listatFamiliares
End Function

Public Function TraerFiltradoListOf(ByVal Filtro As [String], ByVal Args As Object) As List(Of tFamiliares)
            Dim dtDatos As DataTable
            Dim param As [String]
            Dim listatFamiliares As New List(Of tFamiliares)
            param = (Me.mNombreEntidad + "_Tx")
            param = (param + Filtro.ToString)
            dtDatos = Me.ServidorDatos.TraerDataTable(param, Args)
            For Each dr As DataRow In dtDatos.Rows
            Dim mtFamiliares As New tFamiliares
				mtFamiliares.IdFamiliar = CType(dr.Item("IdFamiliar"),Integer)
				mtFamiliares.Traer_objeto()
            	listatFamiliares.Add( mtFamiliares)
    		Next dr
Return listatFamiliares
End Function

Public Function TraerFiltradoLikeListOf(ByVal Filtro As [String], ByVal Args As Object) As List(Of tFamiliares)
            Dim dtDatos As DataTable
            Dim param As [String]
            Dim listatFamiliares As New List(Of tFamiliares)
            param = (Me.mNombreEntidad + "_TxLike")
            param = (param + Filtro.ToString)
            dtDatos = Me.ServidorDatos.TraerDataTable(param, Args)
            For Each dr As DataRow In dtDatos.Rows
            Dim mtFamiliares As New tFamiliares
				mtFamiliares.IdFamiliar = CType(dr.Item("IdFamiliar"),Integer)
				mtFamiliares.Traer_objeto()
            	listatFamiliares.Add( mtFamiliares)
    		Next dr
Return listatFamiliares
End Function
# End Region

End Class
End Namespace
